//844.比较含退格的字符串
class Solution {
public:
    bool backspaceCompare(string s, string t) {
        //使用双指针进行实现

        int n=s.size(),m=t.size();
        int i=n-1,j=m-1;
        int sdel=0,ndel=0;
        while(i>=0||j>=0) //使用或来进行判断
        {
            while(i>=0)  
            {
                if(s[i]=='#') sdel++;  //当是#时将sdel++，表示有一个字符要被删除
                else if(sdel>0) sdel--;
                else break;    //当当前字符不是#并且没有要删除的字符时就要将该位置字符进行比较
                i--;
            }
            while(j>=0)
            {
                if(t[j]=='#') ndel++;
                else if(ndel>0) ndel--;
                else break;
                j--;
            }
            if(i>=0&&j>=0&&s[i]!=t[j]) return false;
            if((i<0&&j>=0)||(i>=0&&j<0)) return false;  //进行比较时仅有一方没有元素可以进行比较时直接返回
            i--,j--;
        }
        return true;
    }
};